SUPRA-RPC: SUbprogram PaRA meters in Remote Procedure Calls

نویسنده

  • Alexander D. Stoyen
چکیده

Remote-procedure calls (RPCs) allow distributed, high-level language programs to communicate and synchronize in the usual manner via subprogram calls. One of the great challenges in RPC research is to preserve the traditiional call semantics despite the distribution and heterogeneity of the new environment. The main contribution of SUPRA-RPC is in addressing the passing of subprograms as RPC parameters. In doing so, SUPRA overcomes a number of technical difficulties, stemming from scoping, side-effects and other sources. Since supporting subprogram RPC parameters is harder than supporting non-subprogram RPC parameters, the three (of six) components of the SUPRA architecture extend in novel ways the traditional functionality found in their counterparts in other RPC systems. The SUPRA stub generator extracts information not only from remote entry interfaces, but from any scope potentially referenced by a subprogram passed as an RPC parameter. In addition to the usual calland accept-stubs and the marshaling and unmarshaling routines, the generator constructs out-of-scope access stubs, callback’ and callback-handling-stubs, and modified parameter subprograms and others. The SUPRA run-time support manages a runtime symbol table to keep track of referencing environments and out-of-scope objects. When an out-of-scope object is unavailable for access or execution on the server, the object is reached by a synchronous, ‘under-the-covers’ callback. The SUPRA process management supports servers with independent threads of control, manages (possibly nested) callbacks and pools of callback handler threads, and maintains correct identification of thread-initiated calls or callbacks. A SUPRA prototype has been implemented on Sun Unix workstations. The prototype supports C, C++ and CommonLisp programs. A prototype graphical demonstration has been implemented as well, that represents RPC concepts in terms of common life objects and situations.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Design of a Communication System Capable of Supporting Real-Time RPC

This paper proposes and analyzes a communic ation mechanism capable of supporting real time RPC Remote Procedure Call which is based on request acknowledgment reply semantic As an en hanced protocol of TDMA implemented Ethernet the proposed CS Communication System dynamically schedules RPC related messages according to their at tributes making a network schedule be easily com bined with a serve...

متن کامل

Nested HEX-Programs

Answer-Set Programming (ASP) is an established declarative programming paradigm. However, classical ASP lacks subprogram calls as in procedural programming, and access to external computations (like remote procedure calls) in general. The feature is desired for increasing modularity and—assuming proper access in place—(meta-)reasoning over subprogram results. While HEX-programs extend classical...

متن کامل

Securing Remote Procedure Calls over HTTPS

Remote Procedure Calls (RPC) are widely used over the Internet as they provide a simple and elegant way of interaction between the client and the server. This paper proposes a solution for securing the remote procedure calls (RPC) by tunneling it through HTTPS (Hypertext Transfer Protocol over Secure Socket Layer). RPC over HTTP actually uses the Secure Socket Layer (SSL) protocol as a transpor...

متن کامل

A Performance Evaluation of Rpc, Java Rmi, Mpi and Pvm

This paper presents performance comparison of Remote Procedure Calls (RPC), Java Remote Machine Invocation (RMI), Message Passing Interface (MPI) and Parallel Virtual Machine (PVM). The Bandwidth, latency and parallel processing time are measured using standard benchmarks. The results show that the MPI performance is much closer to RPC performance.

متن کامل

Remote Procedure Call : Implementation

Remote Procedure Call (RPC) is a powerful primitive used for communication and synchronization between distributed processes. Remote procedure calls (RPC) seemto be a helpful paradigm for providing communication across a network between programs written in a high-level language. RPC have a problem that it reduces the amount of parallelism, because it is synchronous in nature. This paper shows h...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1991